import App from './App'

// #ifndef VUE3
import Vue from 'vue'
// import '@/utils/utils'
import './uni.promisify.adaptor'

Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
	...App
})
app.$mount()
// #endif

// #ifdef VUE3
import {
	createSSRApp
} from 'vue'

import {
	createPinia
} from 'pinia'
// Pinia 持久化插件
import {
	createPersistedState
} from 'pinia-plugin-persistedstate'

import '@/utils/utils'


export function createApp() {
	const app = createSSRApp(App)
	// 创建 Pinia 实例
	const pinia = createPinia()
	// 应用 Pinia 插件
	pinia.use(
		// 自定义 Pinia 插件
		createPersistedState({
			// 自定义本地存储的逻辑
			storage: {
				setItem(key, value) {
					uni.setStorageSync(key, value)
				},
				getItem(key) {
					return uni.getStorageSync(key)
				},
			},
		}))
	app.use(pinia)
	return {
		app
	}
}
// #endif